package com.ankicoo.common.service;

import com.ankicoo.common.entity.CommCityPO;
import com.ankicoo.common.model.CityList;

import java.util.List;

/**
 * Description: 城市信息
 *
 * @author : QCYANG
 * @date : 2021/11/24 18:02
 */
public interface CommCityService {
    /**
     * 查找对应层级的地址信息
     * @param level cityKind 0-4 对应 CityKindEnum
     * @return 地址信息列表
     */
    List<CommCityPO> findCityListByLevel(Integer level);

    /**
     * 查找对应层级的完整地址信息 包含子列表信息
     * @param level cityKind 0-4 对应 CityKindEnum
     * @return 地址信息列表（附子列表）
     */
    List<CityList> findFullCityListByLevel(Integer level);

    /**
     * 填充次级所有城市信息
     * @param city 地址对象
     * @return 地址列表
     */
    CityList fillSubCityInfo(CommCityPO city);

    /**
     * 通过id查找子地址信息列表
     * @param cityId id
     * @return 子列表
     */
    List<CommCityPO> findSubCityListById(String cityId);
}
